table of contents
SCALB(3) | Manuel du programmeur Linux | SCALB(3) |
NOM¶
scalb, scalbf, scalbl - Multiplier un nombre en virgule flottante par un entier puissance d'une base (OBSOLÈTE)
SYNOPSIS¶
#include <math.h>
double scalb(double x, double
exp);
float scalbf(float x, double exp);
long double scalbl(long double x, double
exp);
Effectuez l'édition des liens avec l'option -lm.
Exigences de macros de test de fonctionnalités pour la glibc (voir
feature_test_macros(7)) :
scalb() : _BSD_SOURCE || _SVID_SOURCE ||
_XOPEN_SOURCE >= 500
scalbf(), scalbl() : _BSD_SOURCE || _SVID_SOURCE ||
_XOPEN_SOURCE>= 600
DESCRIPTION¶
Ces fonctions multiplient leur premier paramètre x par FLT_RADIX (probablement 2) à la puissance exp, c'est-à-dire :
x * FLT_RADIX ** exp
La définition de FLT_RADIX peut être obtenue en incluant <float.h>.
VALEUR RENVOYÉE¶
En cas de réussite, ces fonctions renvoient x * FLT_RADIX ** exp.
Si x ou exp est un NaN, un NaN est renvoyé.
Si x est une valeur infinie positive (respectivement, négative) et exp n'est pas une valeur infinie négative, l'infini positif (respectivement, négatif) est renvoyé.
Si x vaut +0 (respectivement, -0) et exp n'est pas l'infini positif, +0 (respectivement, -0) est renvoyé.
Si x est nul et exp est l'infini positif, une erreur de domaine se produit et un NaN est renvoyé.
Si x est infini et exp est l'infini négatif, une erreur de domaine se produit et un NaN est renvoyé.
En cas de dépassement pour le résultat, une erreur d'intervalle se produit et les fonctions renvoient HUGE_VAL, HUGE_VALF ou HUGE_VALL, respectivement, avec le même signe que x.
En cas de souspassement (« underflow »), une erreur d'intervalle se produit et les fonctions renvoient zéro avec le même signe que x.
ERREURS¶
Consultez math_error(7) pour savoir comment déterminer qi une erreur est survenue lors de l'appel de ces fonctions.
Les erreurs suivantes peuvent se produire :
- Erreur de domaine : x est nul et exp est l'infini positif, ou x est l'infini positif et exp est l'infini négatif et l'autre paramètre n'est pas un NaN.
- Une exception de virgule flottante incorrecte (FE_INVALID) est levée.
- Erreur d'intervalle, dépassement
- Une exception en virgule flottante de dépassement (FE_OVERFLOW) est levée.
- Erreur d'intervalle, souspassement (« underflow »)
- Une exception en virgule flottante de souspassement (FE_UNDERFLOW) est levée.
Ces fonctions ne positionnent pas errno.
CONFORMITɶ
scalb() est spécifiée dans POSIX.1-2001, mais marquée comme étant obsolète. POSIX.1-2008 supprime la spécification de scalb(), en recommendant d'utiliser scalbln(3), scalblnf(3) ou scalblnl(3) à la place. La fonction scalb() provient de BSD 4.3.
scalbf() et scalbl() ne sont pas standard ; scalbf() est cependant présent dans certains autres système.
VOIR AUSSI¶
COLOPHON¶
Cette page fait partie de la publication 3.23 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse <URL:http://www.kernel.org/doc/man-pages/>.
TRADUCTION¶
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <URL:http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <URL:http://alioth.debian.org/projects/perkamon/>.
Alain Portal <URL:http://manpagesfr.free.fr/> (2006). Nicolas François et l'équipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à <perkamon-l10n-fr@lists.alioth.debian.org>.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».
15 mars 2009 |